# -*- encoding:utf-8 -*-
# @Time : 2024/10/25 17:08
# @Author : xunter
# @Email : 3133739348@qq.com
# @File : common_extras.py
# @Software : PyCharm
from datetime import datetime

from django import template

#自定义过滤器

register = template.Library()

@register.filter()
def time_since(value):
    '''
    对发布时间进行处理
    1、如果和当前时间间隔小于一分钟 显示‘刚刚’
    2、如果大于一分钟小于一小时 显示‘**分钟之前’
    3、如果大于一小时小于一天 显示‘**小时之前’
    4、如果大于一天小于30天 显示‘**天之前’
    5、如果大于30天 显示具体时间
    :param value:发布时间
    :return:具体信息
    '''
    now=datetime.now()
    timestamp=(now-value).total_seconds()#化单位为秒
    if timestamp<60:
        return '刚刚'
    elif 60<=timestamp<60*60:
        res=int(timestamp/60)
        return f'{res}分钟前'
    elif 60*60<=timestamp<60*60*24:
        res=int(timestamp/(60*60))
        return f'{res}小时前'
    elif 60*60*24<=timestamp<60*60*24*30:
        res=int(timestamp/(60*60*24))
        return f'{res}天前'
    else:
        return value.strftime('%Y-%m-%d %H:%M:%S')

register = template.Library()
@register.filter(name='joint')
def joint(value,arg):
    return str(value)+str(arg)